with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;

package tokens is

   type Token_Kind is
     (ILLEGAL, EOF, IDENT, INT, ASSIGN, PLUS, MINUS, BANG, ASTERISK, SLASH, EQ,
      NOT_EQ, LT, GT, COMMA, SEMICOLON, LPAREN, QUOTE, RPAREN, LBRACE, RBRACE,
      K_TRUE, K_FALSE, K_IF, K_ELSE, K_RETURN);

   type Token_Type is record
      Kind    : Token_Kind;
      Literal : Unbounded_String;
   end record;

   function Lookup_Identifier (Test : Unbounded_String) return Token_Kind;

end tokens;
